In recent years, mobile information communication terminals (cellular phones, smart phones, PDAs (Persona Digital Assistants), etc.) have increasing opportunities of downloading and installing applications via a wireless connection or via a personal computer (PC). Java® applications are an example of such applications. The user of a cellular phone can run a favorite Java application on the cellular phone by selecting and downloading the favorite Java application from a browser screen, etc.
As above, such mobile information communication terminals, capable of increasing functions by downloading applications, are expected to continue to increase in the future. Incidentally, the functionality expansion by downloading applications has been cited as an essential function also in “Workshop on Communication Terminals in the IP-integration Age” held by the Ministry of Internal Affairs and Communications (Japan), as described in Non-Patent Document 1.
Incidentally, the timing of downloading an application can be 1) upon selection by the user, 2) upon detection of a trigger, or 3) on demand. The first timing corresponds to a method downloading the application when a selection (to download the application) is made from the browser screen, etc. by the user operation. The second timing corresponds to a method downloading the application when a certain condition (regarding time, place, etc.) is satisfied. The third timing means, for example, the instant when an application calls up another application. In the present invention, when an application calls up another application and the calling causes execution of some kind of process, such an event or function is referred to as “application interoperability”. The third timing corresponds to, so to say, a method downloading the called application (called up by the application interoperability) from a server on a network when the called application does not exist in the terminal. This method can be translated as on-demand application download by use of an application.
The present invention is targeted mainly at the on-demand application download. Problems with the on-demand application download may include a long download time which sometimes makes the user feel as if the currently executed process had stopped and impossibility of continuing the currently executed process (due to impossibility of download) when the network is unusable. Therefore, a method, capable of previously figuring out necessary applications (i.e., applications related to the currently executed application) and thereby completing the download of the necessary applications before such a necessary application is called up, is being requested.
In addition, since the resources of a mobile information communication terminal are generally more limited compared to PCs (Personal Computers), etc., downloading all the related applications can lead to exhaustion of the storage. Further, with the increase in the number of downloaded applications and the application size, fees charged to the user (content fee, packet fee, etc.) also increase correspondingly. Therefore, it is necessary to limit the download of applications to those that seem to be really necessary.
Techniques for extracting necessary or related applications have been disclosed in literatures such as Patent Document 1 and Patent Document 2, for example. In a technique disclosed in the Patent Document 1, when calling relationships among methods are listed, a method list whose number of times of calling is large is displayed at a position easily accessible to the user.
Meanwhile, in the Patent Document 2, a method for a thin-client terminal for prefetching (previously acquiring/transferring) an appropriate work environment (files, applications, etc.) to an appropriate application server has been described.
Further, a method for downloading related data by use of statistical data regarding the order relationship among called functions has been described in Patent Document 3.